home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / choices / chcssml1.lha / Vector.h < prev   
C/C++ Source or Header  |  1989-02-06  |  1KB  |  59 lines

  1. /*
  2.  * This file is part of the Choices Operating System Simulator
  3.  * Developed by: The TAPESTRY Parallel Computing Laboratory
  4.  *         University of Illinois at Urbana-Champaign
  5.  *         Department of Computer Science
  6.  *         1304 W. Springfield Ave.
  7.  *         Urbana, IL    61801
  8.  *
  9.  * Copyright (c) 1987, 1988, 1989 The University of Illinois Board of Trustees.
  10.  *    All Rights Reserved.
  11.  * CONFIDENTIAL INFORMATION. Distribution restricted under license agreement.
  12.  *
  13.  * Author: Gary M. Johnston (johnston@cs.uiuc.edu)
  14.  * Project Manager and Principal Investigator: Roy Campbell (roy@cs.uiuc.edu)
  15.  *
  16.  * Funded by: NSF TAPESTRY Grant No. 1-5-30035, NASA ICLASS Grant 
  17.  *   No. 1-5-25469 and No. NSG1471 and AT&T Metronet Grant No. 1-5-37411.
  18.  */
  19. /*
  20.  * Vector.h - Class VectorQueue declarations.
  21.  *
  22.  *    $Header: Vector.h,v 1.2 88/02/15 20:56:42 johnston Exp $
  23.  *    $Locker: johnston $
  24.  */
  25.  
  26. #ifndef VECTOR_H
  27. #define VECTOR_H
  28.  
  29. #include "Queue.h"
  30.  
  31. const int ResetVector = 0;    // Raise ResetException.
  32. const int IdleVector  = 1;    // Raise IdleException.
  33. const int TimerVector = 2;    // Raise TimerException.
  34. const int TerminateVector = 3;    // Raise TerminateException.
  35.  
  36. const int VectorCount = 4;    // Number of vectors.
  37.  
  38. inline int
  39. VectorValid(int vector)
  40. {
  41.     /*
  42.      * Return "true" iff the vector is within range.
  43.      */
  44.     return ((vector >= 0) && (vector < VectorCount));
  45. }
  46.  
  47. class VectorQueue {
  48.     Queue * queue;
  49. public:
  50.     VectorQueue();
  51.     ~VectorQueue();
  52.  
  53.     void add(int vector);
  54.     int remove();
  55.     int isEmpty();
  56. };
  57.  
  58. #endif /* VECTOR_H */
  59.